namespace OrganizingStraightLineCode
{
    public class Chef
    {
        public void Cook()
        {
            Bowl bowl;
            bowl = this.GetBowl();

            Vegetable potato = this.GetPotato();
            this.Peel(potato);
            this.Cut(potato);

            Vegetable carrot = this.GetCarrot();
            this.Peel(carrot);
            this.Cut(carrot);

            bowl.Add(potato);
            bowl.Add(carrot);
        }
        
        private Bowl GetBowl()
        {
            Bowl bowl = new Bowl();

            return bowl;
        }

        private Vegetable GetPotato()
        {
            Vegetable potato = new Vegetable(VegetabeType.Potato, 1000);

            return potato;
        }

        private Vegetable GetCarrot()
        {
            Vegetable carrot = new Vegetable(VegetabeType.Carrot, 300);

            return carrot;
        }

        private void Cut(Vegetable vegetable)
        {
            vegetable.Cut();
        }

        private void Peel(Vegetable vegetable)
        {
            vegetable.Peel();
        }
    }
}